package org.jeecg.modules.param.station.mapper;

import com.alipay.api.domain.PageInfo;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.home.monitoring.entity.MonitoringMap;
import org.jeecg.modules.home.monitoring.vo.MonitoringMapReq;
import org.jeecg.modules.param.station.entity.BikeStation;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.param.station.vo.SysUserRe;
import org.jeecg.modules.param.station.vo.UpSiteReq;
import org.jeecg.modules.param.station.vo.UpSiteRsp;

import java.util.Date;
import java.util.List;

/**
 * @Description: bike_station
 * @Author: 月月鸟
 * @Date:   2021-05-19
 * @Version: V1.0
 */
public interface BikeStationMapper extends BaseMapper<BikeStation> {
    List<BikeStation> selectAllList();

    SysUserRe selectAdmin(String userId);

    SysUserRe selectAdminByUserName(String userName);

    List<UpSiteRsp> upSiteList(UpSiteReq upSiteReq);
    List<UpSiteRsp> upSitePileList(UpSiteReq upSiteReq);

    void updateStationLockById(@Param("ids") String[] ids, @Param("isLock") String isLock, @Param("lockCause") String lockCause);

    int onlineCount(@Param("date") Date date, @Param("stationId") String[] stationId);

    List<String> getStationId();

    Page<BikeStation> pageList(Page<BikeStation> page,@Param(value = "bikeStation") BikeStation bikeStation);

    List<BikeStation> list(BikeStation bikeStation);

    long getStationListCount(@Param(value = "bikeStation")BikeStation bikeStation);

    List<SysUserRe> getAdminList(SysUserRe sysUserRe);

}
